﻿using System;
using System.Collections;
using System.Collections.Generic;
using System.Drawing;
using System.Drawing.Printing;
using System.IO;
using System.Windows.Forms;
using DevExpress.XtraPrinting;
using DevExpress.XtraPrinting.Native;
using Microsoft.Practices.CompositeUI;
using Microsoft.Practices.CompositeUI.EventBroker;
using NetROS.Tiers.Entities;
using NetROS.Tiers.Services;
using NetRosApp.Infrastructure.Interface;
using NetRosApp.Infrastructure.Interface.Base;
using NetRosApp.Infrastructure.Interface.Services;
using NetRosApp.Klijenti.Constants;
using NetRosApp.Klijenti.Reports;
using DevExpress.XtraReports.UI;
using Microsoft.Practices.EnterpriseLibrary.ExceptionHandling;
using System.Data;

namespace NetRosApp.Klijenti
{
    class BaseOtvaranjeIzvjestaja
    {
        private int impersinate = 0;

        private int brojkopija = 1;
        public void ShowReportForDokumentTip(Object sender, Dokument _entity, WorkItem WorkItem)
        {
            if (_entity == null) return;
            if (_entity.ID == 0)
            {
                return;
            }
            XtraReport report;
            ReportSelectorFrm _tmpfrm;
            ReportZagPodnozje _repzgp;

            List<IzjestajiListe> _tmpList;
            //_tmpList;
            impersinate = 0;
            brojkopija = 1;
            switch (_entity.IDDokumentTip)
            {
                case (int)DokumentTipList.Međuskladišnica_Izdana_Robno:


                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();
                    //_tmpList.Add("Međuskladišnica");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Međuskladišnica");
                    if (WorkItem.Services.Get<IActionCatalogService>().CanExecute("PrikazPNC"))
                    {
                        DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Međuskladišnica s PNC");
                    }
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Međuskladišnica_Izdana_Robno");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    //_tmpfrm.LBIzabir.DisplayMember("Value");
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;

                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "MedjuskladisnicaIzlazCijena")
                            {
                                report = new MedjuskladisnicaIzlazCijena(_entity);

                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Međuskladišnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }

                            if (selectedItem.NazivIzvjestaja == "MeduskladisnicaIspis")
                            {
                                report = new MeduskladisnicaIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Međuskladišnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Međuskladišnica")
                            {
                                report = new MedjuskladisnicaIzlazCijena(_entity) as XtraReport;
                                report.Name = string.Format("Meduskladisnica {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Meduskladisnica {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Međuskladišnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Međuskladišnica {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Međuskladišnica s PNC")
                            {
                                report = new MeduskladisnicaIspis(_entity);
                                report.Name = string.Format("Meduskladisnica {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Meduskladisnica {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Međuskladišnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Međuskladišnica {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }

                    break;
                case (int)DokumentTipList.Međuskladišnica_Izdana_Storno:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Meduskladisnica-storno");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Međuskladišnica_Izdana_Storno");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "MeduskladisnicaStornoIspis")
                            {
                                report = new MeduskladisnicaStornoIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Meduskladisnica-storno")
                            {
                                report = new MeduskladisnicaStornoIspis(_entity);
                                report.Name = string.Format("Meduskladisnica-storno {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Meduskladisnica-storno {0}", _entity.Oznaka);
                                // WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Međuskladišnica storno {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Međuskladišnica storno {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }

                    break;
                case (int)DokumentTipList.Međuskladišnica_Primljena_Robno:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Meduskladisnica prijem");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Međuskladišnica_Primljena_Robno");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;

                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "MeduskladisnicaPrijemIspis")
                            {
                                report = new MeduskladisnicaPrijemIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Meduskladisnica prijem")
                            {
                                report = new MeduskladisnicaPrijemIspis(_entity);
                                report.Name = string.Format("Meduskladisnica prijem {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Meduskladisnica prijem {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Međuskladišnica prijem {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Međuskladišnica prijem {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }

                    break;
                case (int)DokumentTipList.Međuskladišnica_prijem_Storno:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Meduskladisnica prijem-storno");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Međuskladišnica_prijem_Storno");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;

                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "MeduskladisnicaPrijemStornoIspis")
                            {
                                report = new MeduskladisnicaPrijemStornoIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Meduskladisnica prijem-storno")
                            {
                                report = new MeduskladisnicaPrijemStornoIspis(_entity);
                                report.Name = string.Format("Meduskladisnica prijem-storno {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                report.Name = string.Format("Meduskladisnica prijem-storno {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Međuskladišnica prijem storno {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Međuskladišnica prijem storno {0}", _repzgp, WorkItem,
                                           _tmpfrm.tipispisa);
                            }
                        }
                    }

                    break;
                case (int)DokumentTipList.Narudžba:
                    _tmpfrm = new ReportSelectorFrm();
                    //  Dictionary<int, String> _tmpdict = new Dictionary<int, String>();
                    _tmpList = new List<IzjestajiListe>();
                    //_tmpdict.Add(1, "Prijemni list storno");
                    //_tmpdict.Add(0, "Povrat robe");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Narudžbenica s cijenom");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Narudžbenica");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Upit");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Narudzba");

                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    //_tmpfrm.LBIzabir.DisplayMember("Value");
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "NarudzbenicaIspis")
                            {
                                report = new NarudzbenicaIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                            if (selectedItem.NazivIzvjestaja == "NarudzbenicaUpit")
                            {
                                report = new NarudzbenicaUpit(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem,
                                           _tmpfrm.tipispisa);

                            }
                            if (selectedItem.NazivIzvjestaja == "NarudzbenicaIspis2")
                            {
                                report = new NarudzbenicaIspis2(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem,
                                           _tmpfrm.tipispisa);

                            }


                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Narudžbenica")
                            {
                                report = new NarudzbenicaIspis(_entity);
                                report.Name = string.Format("Narudžbenica {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Narudžbenica {0}", _entity.Oznaka);
                                //   WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Narudžbenica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Narudžbenica {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Upit")
                            {
                                report = new NarudzbenicaUpit(_entity);
                                report.Name = string.Format("Upit {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Upit {0}", _entity.Oznaka);
                                //  WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Upit {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Upit {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Narudžbenica s cijenom")
                            {

                                report = new NarudzbenicaIspis2(_entity);
                                report.Name = string.Format("Narudžbenica {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Narudžbenica {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Narudžbenica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Narudžbenica {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }

                    }
                    break;
                case (int)DokumentTipList.Narudžba_storno:
                    _tmpfrm = new ReportSelectorFrm();
                    //  Dictionary<int, String> _tmpdict = new Dictionary<int, String>();
                    _tmpList = new List<IzjestajiListe>();
                    //_tmpdict.Add(1, "Prijemni list storno");
                    //_tmpdict.Add(0, "Povrat robe");

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Narudžbenica s cijenom");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Narudžbenica");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Narudzba_storno");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    //_tmpfrm.LBIzabir.DisplayMember("Value");
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {

                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;

                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "NarudzbenicaIspis")
                            {
                                report = new NarudzbenicaIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                            if (selectedItem.NazivIzvjestaja == "NarudzbenicaIspis2")
                            {
                                report = new NarudzbenicaIspis2(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {

                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Narudžbenica")
                            {
                                report = new NarudzbenicaIspis(_entity);
                                report.Name = string.Format("Narudžbenica-storno {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Narudžbenica-storno {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Narudžbenica storno {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Narudžbenica storno {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Narudžbenica s cijenom")
                            {

                                report = new NarudzbenicaIspis2(_entity);
                                report.Name = string.Format("Narudžbenica-storno {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Narudžbenica-storno {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Narudžbenica storno {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Narudžbenica storno {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);


                            }
                        }

                    }
                    break;
                case (int)DokumentTipList.Otkaz_rezervacije:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();
                    //_tmpList.Add("Otkaz rezervacija");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Otkaz rezervacija");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Otkaz_rezervacije");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;

                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "RacunOtpremnica")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {

                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Otkaz rezervacija")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.Name = string.Format("Otkaz rezervacija {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Otkaz rezervacija {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Otkaz rezervacije {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Otkaz rezervacije {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }
                    break;
                case (int)DokumentTipList.Otpremnica:
                    _tmpfrm = new ReportSelectorFrm();
                    //  Dictionary<int, String> _tmpdict = new Dictionary<int, String>();
                    _tmpList = new List<IzjestajiListe>();
                    //_tmpdict.Add(1, "Prijemni list storno");
                    //_tmpdict.Add(0, "Povrat robe");
                    //_tmpList.Add("Otpremnica");
                    //_tmpList.Add("Otpremnica s cijenom");
                    //_tmpList.Add("Otpremnica s svim elementima");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Otpremnica");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Otpremnica s cijenom");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Otpremnica s svim elementima");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Otpremnica s cijenom i opisom");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Otpremnica s opisom");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Otpremnica s svim elementima i opisom");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Otpremnica");

                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    //_tmpfrm.LBIzabir.DisplayMember("Value");
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {

                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;


                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "OtpremnicaIspis")
                            {
                                report = new OtpremnicaIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                            if (selectedItem.NazivIzvjestaja == "OtpremnicaIspisOpis")
                            {
                                FilajStavke(_entity, WorkItem);
                                report = new OtpremnicaIspisOpis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                            if (selectedItem.NazivIzvjestaja == "OtpremnicaIspisKomplet")
                            {
                                report = new OtpremnicaIspisKomplet(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                            if (selectedItem.NazivIzvjestaja == "OtpremnicaIspisKompletOpis")
                            {
                                report = new OtpremnicaIspisKomplet(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                            if (selectedItem.NazivIzvjestaja == "OtpremnicaIspisKol")
                            {
                                report = new OtpremnicaIspisKol(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                            if (selectedItem.NazivIzvjestaja == "OtpremnicaIspisKolOpis")
                            {
                                report = new OtpremnicaIspisKolOpis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Otpremnica s cijenom")
                            {
                                report = new OtpremnicaIspis(_entity);
                                report.Name = string.Format("Otpremnica {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Otpremnica {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Otpremnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Otpremnica {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Otpremnica s cijenom i opisom")
                            {
                                report = new OtpremnicaIspisOpis(_entity);
                                report.Name = string.Format("Otpremnica {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Otpremnica {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Otpremnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Otpremnica {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Otpremnica s svim elementima")
                            {
                                report = new OtpremnicaIspisKomplet(_entity);
                                report.Name = string.Format("Otpremnica {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Otpremnica {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Otpremnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Otpremnica {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Otpremnica s svim elementima i opisom")
                            {
                                report = new OtpremnicaIspisKompletOpis(_entity);
                                report.Name = string.Format("Otpremnica {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Otpremnica {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Otpremnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Otpremnica {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Otpremnica")
                            {

                                report = new OtpremnicaIspisKol(_entity);
                                report.Name = string.Format("Otpremnica {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Otpremnica {0}", _entity.Oznaka);
                                //  WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Otpremnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Otpremnica {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Otpremnica s opisom")
                            {

                                report = new OtpremnicaIspisKolOpis(_entity);
                                report.Name = string.Format("Otpremnica {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Otpremnica {0}", _entity.Oznaka);
                                //  WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Otpremnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Otpremnica {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }


                        }
                    }

                    break;
                case (int)DokumentTipList.Otpremnica_Storno:
                    _tmpfrm = new ReportSelectorFrm();
                    //  Dictionary<int, String> _tmpdict = new Dictionary<int, String>();
                    _tmpList = new List<IzjestajiListe>();
                    //_tmpdict.Add(1, "Prijemni list storno");
                    //_tmpdict.Add(0, "Povrat robe");
                    //_tmpList.Add("Otpremnica");
                    //_tmpList.Add("Otpremnica s cijenom");
                    //_tmpList.Add("Otpremnica s svim elementima");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Otpremnica");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Otpremnica s cijenom");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Otpremnica s svim elementima");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Otpremnica_Storno");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    //_tmpfrm.LBIzabir.DisplayMember("Value");
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "OtpremnicaIspisStorno")
                            {
                                report = new OtpremnicaIspisStorno(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                            if (selectedItem.NazivIzvjestaja == "OtpremnicaIspisKompletStorno")
                            {
                                report = new OtpremnicaIspisKompletStorno(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                            if (selectedItem.NazivIzvjestaja == "OtpremnicaIspisKolStorno")
                            {
                                report = new OtpremnicaIspisKolStorno(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Otpremnica s cijenom")
                            {

                                report = new OtpremnicaIspisStorno(_entity);
                                report.Name = string.Format("Otpremnica-storno {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Otpremnica-storno {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Otpremnica storno {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Otpremnica storno {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Otpremnica s svim elementima")
                            {

                                report = new OtpremnicaIspisKompletStorno(_entity);
                                report.Name = string.Format("Otpremnica-storno {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Otpremnica-storno {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Otpremnica storno {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Otpremnica storno {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Otpremnica")
                            {


                                report = new OtpremnicaIspisKolStorno(_entity);
                                report.Name = string.Format("Otpremnica-storno {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Otpremnica-storno {0}", _entity.Oznaka);
                                // WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Otpremnica storno {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Otpremnica storno {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }

                    }

                    break;

                case (int)DokumentTipList.Početno_stanje:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Početno stanje");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Pocetno_stanje");
                    //_tmpList.Add("Početno stanje");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {


                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "Pocetnostanje")
                            {
                                report = new Pocetnostanje(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Početno stanje")
                            {
                                report = new Pocetnostanje(_entity);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Početno stanje {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Početno stanje{0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Početno stanje{0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }

                    break;
                case (int)DokumentTipList.Početno_stanje_storno:
                    break;
                //PrijemniListMP
                case 49:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Početno stanje");

                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Pocetno_stanje_storno");
                    //_tmpList.Add("Prijemni list MP");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {


                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "Pocetnostanje")
                            {
                                report = new Pocetnostanje(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Početno stanje")
                            {
                                report = new Pocetnostanje(_entity);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Početno stanje {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Početno stanje{0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Početno stanje{0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }
                    //if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    //{
                    //    IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                    //    if (selectedItem.TipIspia == "Lokalno")
                    //    {

                    //        if (selectedItem.NazivIzvjestaja == "MedjuskladisnicaIzlazCijena")
                    //        {
                    //                if (_entity.IDValute == 1 || _entity.IDValute == null)
                    //            {
                    //                report = new PrijemniListMP(_entity);
                    //                       report.LoadLayout(selectedItem.File);
                    //            report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                    //            _repzgp = new ReportZagPodnozje();
                    //            _repzgp.xrSubreport1.ReportSource = report;
                    //            _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                    //            OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                    //            }
                    //            else
                    //            {
                    //                report = new PrijemniListValutiMP(_entity);
                    //                      report.LoadLayout(selectedItem.File);
                    //                          report.LoadLayout(selectedItem.File);
                    //            report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                    //            _repzgp = new ReportZagPodnozje();
                    //            _repzgp.xrSubreport1.ReportSource = report;
                    //            _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                    //            OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                    //            }

                    //        }
                    //    }
                    //    else
                    //    {
                    //        if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Prijemni list MP")
                    //        {
                    //            _repzgp = new ReportZagPodnozje();

                    //            if (_entity.IDValute == 1 || _entity.IDValute == null)
                    //            {
                    //                report = new PrijemniListMP(_entity);
                    //                report.Name = string.Format("Prijemni list MP{0}", _entity.Oznaka);
                    //                _repzgp.xrSubreport1.ReportSource = report;
                    //                report.Name = string.Format("Prijemni list MP{0}", _entity.Oznaka);

                    //            }
                    //            else
                    //            {
                    //                report = new PrijemniListValutiMP(_entity);
                    //                report.Name = string.Format("Prijemni list {0}", _entity.Oznaka);
                    //                _repzgp.xrSubreport1.ReportSource = report;
                    //                report.Name = string.Format("Prijemni list {0}", _entity.Oznaka);
                    //            }
                    //            //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Prijemni list{0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                    //            OpenReport(_entity, "Prijemni list MP{0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                    //        }
                    //    }
                    //}

                    break;


                case (int)DokumentTipList.Prijemni_list:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();
                    //_tmpList.Add("Prijemni list");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Prijemni list");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Prijemni_list");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "PrijemniList")
                            {
                                if (_entity.IDValute == 1 || _entity.IDValute == null)
                                {
                                    report = new PrijemniList(_entity);
                                    report.LoadLayout(selectedItem.File);
                                    report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                    _repzgp = new ReportZagPodnozje();
                                    _repzgp.xrSubreport1.ReportSource = report;
                                    _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                    OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                                }
                            }
                            if (selectedItem.NazivIzvjestaja == "PrijemniListValuti")
                            {
                                if (!(_entity.IDValute == 1 || _entity.IDValute == null))
                                {
                                    report = new PrijemniListValuti(_entity);
                                    report.LoadLayout(selectedItem.File);
                                    report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                    _repzgp = new ReportZagPodnozje();
                                    _repzgp.xrSubreport1.ReportSource = report;
                                    _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                    OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                                }
                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Prijemni list")
                            {
                                _repzgp = new ReportZagPodnozje();

                                if (_entity.IDValute == 1 || _entity.IDValute == null)
                                {
                                    report = new PrijemniList(_entity);
                                    report.Name = string.Format("Prijemni list {0}", _entity.Oznaka);
                                    _repzgp.xrSubreport1.ReportSource = report;
                                    report.Name = string.Format("Prijemni list {0}", _entity.Oznaka);

                                }
                                else
                                {
                                    report = new PrijemniListValuti(_entity);
                                    report.Name = string.Format("Prijemni list {0}", _entity.Oznaka);
                                    _repzgp.xrSubreport1.ReportSource = report;
                                    report.Name = string.Format("Prijemni list {0}", _entity.Oznaka);
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Prijemni list{0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Prijemni list{0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }
                    break;

                case (int)DokumentTipList.Prijemni_list_Storno:
                    _tmpfrm = new ReportSelectorFrm();
                    _repzgp = new ReportZagPodnozje();
                    //  Dictionary<int, String> _tmpdict = new Dictionary<int, String>();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Prijemni list strono");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Povrat robe");

                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Prijemni_list_Storno");
                    //_tmpdict.Add(1, "Prijemni list storno");
                    //_tmpdict.Add(0, "Povrat robe");
                    //_tmpList.Add("Prijemni list strono");
                    //_tmpList.Add("Povrat robe");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    //_tmpfrm.LBIzabir.DisplayMember("Value");
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {

                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "PovratRobe")
                            {
                                report = new PovratRobe(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (selectedItem.NazivIzvjestaja == "PrijemniListStorno")
                            {
                                if (_entity.IDValute == 1 || _entity.IDValute == null)
                                {
                                    report = new PrijemniListStorno(_entity);
                                    report.LoadLayout(selectedItem.File);
                                    report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                    _repzgp = new ReportZagPodnozje();
                                    _repzgp.xrSubreport1.ReportSource = report;
                                    _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                    OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem,
                                               _tmpfrm.tipispisa);
                                }
                            }

                            if (selectedItem.NazivIzvjestaja == "PrijemniListValutiStorno")
                            {
                                if (!(_entity.IDValute == 1 || _entity.IDValute == null))
                                {
                                    report = new PrijemniListValutiStorno(_entity);
                                    report.LoadLayout(selectedItem.File);
                                    report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                    _repzgp = new ReportZagPodnozje();
                                    _repzgp.xrSubreport1.ReportSource = report;
                                    _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                    OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem,
                                               _tmpfrm.tipispisa);
                                }
                            }


                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Prijemni list strono")
                            {
                                if (_entity.IDValute == 1 || _entity.IDValute == null)
                                {
                                    report = new PrijemniListStorno(_entity);
                                    report.Name = string.Format("Prijemni list-storno {0}", _entity.Oznaka);
                                    _repzgp.xrSubreport1.ReportSource = report;
                                    _repzgp.Name = string.Format("Prijemni list storno {0}", _entity.Oznaka);

                                }
                                else
                                {
                                    report = new PrijemniListValutiStorno(_entity);
                                    report.Name = string.Format("Prijemni list-storno {0}", _entity.Oznaka);
                                    _repzgp.xrSubreport1.ReportSource = report;
                                    _repzgp.Name = string.Format("Prijemni list-storno {0}", _entity.Oznaka);
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Prijemni list {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Prijemni list {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Povrat robe")
                            {

                                report = new PovratRobe(_entity);
                                report.Name = string.Format("Povrat robe {0}", _entity.Oznaka);
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Povrat robe {0}", _entity.Oznaka);
                                //  WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Povrat robe {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Povrat robe {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }

                        }
                    }
                    break;

                case (int)DokumentTipList.Rezervacija:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Rezervacija");

                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Rezervacija");
                    //_tmpList.Add("Rezervacija");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {

                            if (selectedItem.NazivIzvjestaja == "RacunOtpremnica")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {

                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Rezervacija")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.Name = string.Format("Rezervacija {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Rezervacija {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Rezervacija {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Rezervacija {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }

                    break;
                case (int)DokumentTipList.Zapisnik_o_promjeni_cijene:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Promjena cijene");

                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Zapisnik_o_promjeni_cijene");

                    //_tmpList.Add("Promjena cijene");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "rptXtraPromjenaCijene")
                            {
                                report = new rptXtraPromjenaCijene(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Promjena cijene")
                            {
                                report = new rptXtraPromjenaCijene(_entity);
                                report.Name = string.Format("Promjena cijene {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Promjena cijene {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Promjena cijene{0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Promjena cijene{0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }

                    break;
                case (int)DokumentTipList.Racun:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun s opisom stavke");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Racun");

                    //_tmpList.Add("Račun");
                    //_tmpList.Add("Račun s opisom stavke");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;

                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {

                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "RacunOtpremnica")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                            if (selectedItem.NazivIzvjestaja == "RacunOtpremnicaOpis")
                            {
                                report = new RacunOtpremnicaOpis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.Name = string.Format("Račun {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }

                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun s opisom stavke")
                            {
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                report = new RacunOtpremnicaOpis(_entity);
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun {0}", _entity.Oznaka);
                                report.Name = string.Format("Račun {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }

                                //report.LoadLayout("c:\\XtraReport.repx");

                                // report = new rptXtraPonuda(_entity);
                                //  WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun otpremnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }

                    break;
                case (int)DokumentTipList.Racun_storno:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-ok");

                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Racun_storno");
                    //_tmpList.Add("Račun-ok");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "RacunOtpremnicaOK")
                            {
                                report = new RacunOtpremnicaOK(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-ok")
                            {
                                report = new RacunOtpremnicaOK(_entity);
                                report.Name = string.Format("Račun-ok {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun-ok {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun-OK {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun-OK {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }
                    break;

                case 51:
                    _tmpfrm = new ReportSelectorFrm();
                    //Dictionary<int, String> _tmpdict = new Dictionary<int, String>();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Radni nalog s opisom stavke");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Radni nalog s opisom stavke bez cijena");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "RadniNalog");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    //    _tmpfrm.LBIzabir.DisplayMember("Value");
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {

                        Djelatnik djelatnikkreirao = WorkItem.Services.Get<DjelatnikService>().GetByID(_entity.IDUserCreated);
                   
                        IzjestajiListe selectedItem = ((IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem);
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                           // WorkItem.Services<DjelatnikService>
                           if( (selectedItem.NazivIzvjestaja == "RadniNalogOpis"))
                            {
                                FilajStavke(_entity, WorkItem);
                               
                                report = new RadniNalogOpis(_entity,djelatnikkreirao.PrikaznoIme);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun-otpremnica OK {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }

                              // WorkItem.Services<DjelatnikService>
                           if( (selectedItem.NazivIzvjestaja == "RadniNalogOpisBezCijena"))
                            {
                                FilajStavke(_entity, WorkItem);
                               
                                report = new RadniNalogOpisBezCijena(_entity,djelatnikkreirao.PrikaznoIme);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun-otpremnica OK {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                          
                          
                        }
                        else
                        {
                           
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Radni nalog s opisom stavke")
                            {
                                FilajStavke(_entity, WorkItem);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                report = new RadniNalogOpis(_entity,djelatnikkreirao.PrikaznoIme);
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun otpremnica {0}", _entity.Oznaka);
                                report.Name = string.Format("Račun otpremnica {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                // report = new rptXtraPonuda(_entity);
                                //  WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun otpremnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Radni nalog {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }

                              if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Radni nalog s opisom stavke bez cijena")
                            {
                                FilajStavke(_entity, WorkItem);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                report = new RadniNalogOpisBezCijena(_entity,djelatnikkreirao.PrikaznoIme);
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Radni nalog {0}", _entity.Oznaka);
                                report.Name = string.Format("Radni nalog {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                // report = new rptXtraPonuda(_entity);
                                //  WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun otpremnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Radni nalog {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                         
                         
                           
                        }
                    }
                    break;
                case 52:
                          _tmpfrm = new ReportSelectorFrm();
                    //Dictionary<int, String> _tmpdict = new Dictionary<int, String>();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Radni nalog s opisom stavke");
                     DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Radni nalog s opisom stavke bez cijena");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "RadniNalog");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    //    _tmpfrm.LBIzabir.DisplayMember("Value");
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        Djelatnik djelatnikkreirao = WorkItem.Services.Get<DjelatnikService>().GetByID(_entity.IDUserCreated);
                        IzjestajiListe selectedItem = ((IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem);
                        if (selectedItem.TipIspia == "Lokalno")
                        {

                           if( (selectedItem.NazivIzvjestaja == "RadniNalogOpis"))
                            {
                                FilajStavke(_entity, WorkItem);
                                report = new RadniNalogOpis(_entity,djelatnikkreirao.PrikaznoIme);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun-otpremnica OK {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                          
                          
                        }
                        else
                        {
                           
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Radni nalog s opisom stavke")
                            {
                                FilajStavke(_entity, WorkItem);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                report = new RadniNalogOpis(_entity,djelatnikkreirao.PrikaznoIme);
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Radni nalog {0}", _entity.Oznaka);
                                report.Name = string.Format("Radni nalog {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                // report = new rptXtraPonuda(_entity);
                                //  WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun otpremnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Radni nalog{0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }

                                 if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Radni nalog s opisom stavke bez cijena")
                            {
                                FilajStavke(_entity, WorkItem);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                report = new RadniNalogOpisBezCijena(_entity,djelatnikkreirao.PrikaznoIme);
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Radni nalog {0}", _entity.Oznaka);
                                report.Name = string.Format("Radni nalog {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                // report = new rptXtraPonuda(_entity);
                                //  WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun otpremnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Radni nalog {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                         
                           
                        }
                    }
                    break;
           

                case (int)DokumentTipList.Racun_otpremnica:
                    _tmpfrm = new ReportSelectorFrm();
                    //Dictionary<int, String> _tmpdict = new Dictionary<int, String>();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-otpremnica");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-otpremnica s opisom stavke");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-otpremnica bez cijene");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-otpremnica bez cijene s opisom");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-otpremnica kao otpremnica s cijenom");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-otpremnica kao otpremnica s cijenom i opisom");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-otpremnica POS");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-otpremnica POS bez R1");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Racun_otpremnica");
                    //_tmpdict.Add(1, "Prijemni list storno");
                    //_tmpdict.Add(0, "Povrat robe");

                    //_tmpList.Add("Račun-otpremnica");
                    //_tmpList.Add("Račun-otpremnica s opisom stavke");
                    //_tmpList.Add("Račun-otpremnica bez cijene");
                    //_tmpList.Add("Račun-otpremnica kao otpremnica s cijenom");

                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    //    _tmpfrm.LBIzabir.DisplayMember("Value");
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = ((IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem);
                        if (selectedItem.TipIspia == "Lokalno")
                        {

                            if (selectedItem.NazivIzvjestaja == "RacunOtpremnica")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun-otpremnica OK {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (selectedItem.NazivIzvjestaja == "RacunOtpremnicaOpis")
                            {
                                FilajStavke(_entity, WorkItem);
                                report = new RacunOtpremnica(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun-otpremnica OK {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (selectedItem.NazivIzvjestaja == "OtpremnicaIspis")
                            {
                                report = new OtpremnicaIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                impersinate = (int)DokumentTipList.Otpremnica;
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun-otpremnica OK {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (selectedItem.NazivIzvjestaja == "OtpremnicaIspisKol")
                            {
                                report = new OtpremnicaIspisKol(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                impersinate = (int)DokumentTipList.Otpremnica;
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun-otpremnica OK {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                             if (selectedItem.NazivIzvjestaja == "OtpremnicaIspisKolOpis")
                            {
                                report = new OtpremnicaIspisKolOpis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                impersinate = (int)DokumentTipList.Otpremnica;
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun-otpremnica OK {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                                if (selectedItem.NazivIzvjestaja == "OtpremnicaIspisKompletOpis")
                            {
                                report = new OtpremnicaIspisKompletOpis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                impersinate = (int)DokumentTipList.Otpremnica;
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun-otpremnica OK {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            

                                  if (selectedItem.NazivIzvjestaja == "rptRacunOtpremnicaPOS")
                            {
                                report = new rptRacunOtpremnicaPOS(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                //_repzgp = new ReportZagPodnozje();
                                //impersinate = (int)DokumentTipList.Otpremnica;
                                //_repzgp.xrSubreport1.ReportSource = report;
                                //_repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                //if (_entity.IDStatus == 0)
                                //{
                                //    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                //    _repzgp.Watermark.ShowBehind = true;
                                //}
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun-otpremnica OK {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", report, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-otpremnica")
                            {
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                report = new RacunOtpremnica(_entity);
                                _repzgp.xrSubreport1.ReportSource = report;
                                report.Name = string.Format("Račun otpremnica {0}", _entity.Oznaka);
                                _repzgp.Name = string.Format("Račun otpremnica {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                // report = new rptXtraPonuda(_entity);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun otpremnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun otpremnica {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-otpremnica s opisom stavke")
                            {
                                FilajStavke(_entity, WorkItem);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                report = new RacunOtpremnicaOpis(_entity);
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun otpremnica {0}", _entity.Oznaka);
                                report.Name = string.Format("Račun otpremnica {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                // report = new rptXtraPonuda(_entity);
                                //  WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun otpremnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun otpremnica {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-otpremnica bez cijene")
                            {
                                _repzgp = new ReportZagPodnozje();
                                report = new OtpremnicaIspisKol(_entity);
                                _repzgp.xrSubreport1.ReportSource = report;
                                impersinate = (int)DokumentTipList.Otpremnica;
                                _repzgp.Name = string.Format("Račun-otpremnica {0}", _entity.Oznaka);
                                report.Name = string.Format("Račun-otpremnica {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                // report = new rptXtraPonuda(_entity);
                                //  WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun otpremnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun-otpremnica {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                                if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-otpremnica bez cijene s opisom")
                            {
                                _repzgp = new ReportZagPodnozje();
                                report = new OtpremnicaIspisKolOpis(_entity);
                                _repzgp.xrSubreport1.ReportSource = report;
                                impersinate = (int)DokumentTipList.Otpremnica;
                                _repzgp.Name = string.Format("Račun-otpremnica {0}", _entity.Oznaka);
                                report.Name = string.Format("Račun-otpremnica {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                // report = new rptXtraPonuda(_entity);
                                //  WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun otpremnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun-otpremnica {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-otpremnica kao otpremnica s cijenom")
                            {
                                _repzgp = new ReportZagPodnozje();
                                report = new OtpremnicaIspis(_entity);
                                _repzgp.xrSubreport1.ReportSource = report;
                                impersinate = (int)DokumentTipList.Otpremnica;
                                _repzgp.Name = string.Format("Račun-otpremnica {0}", _entity.Oznaka);
                                report.Name = string.Format("Račun-otpremnica {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                // report = new rptXtraPonuda(_entity);
                                //  WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun otpremnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun-otpremnica {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                               if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-otpremnica kao otpremnica s cijenom i opisom")
                            {
                                _repzgp = new ReportZagPodnozje();
                                report = new OtpremnicaIspisKompletOpis(_entity);
                                _repzgp.xrSubreport1.ReportSource = report;
                                impersinate = (int)DokumentTipList.Otpremnica;
                                _repzgp.Name = string.Format("Račun-otpremnica {0}", _entity.Oznaka);
                                report.Name = string.Format("Račun-otpremnica {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                // report = new rptXtraPonuda(_entity);
                                //  WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun otpremnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun-otpremnica {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }

                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-otpremnica POS")
                            {
                                report = new rptRacunOtpremnicaPOS(_entity);
                                report.Name = string.Format("Račun-otpremnica pos {0}", _entity.Oznaka);
                                ((rptRacunOtpremnicaPOS)report).xrRichText1.LoadFile(Application.StartupPath + "\\ZaglavljePOSR1.rtf");
                                ((rptRacunOtpremnicaPOS)report).xrRichText2.LoadFile(Application.StartupPath + "\\PodnozjePOS.rtf");
                                //_repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                //_repzgp.xrSubreport1.ReportSource = report;
                                //_repzgp.Name = string.Format("Ponuda {0}", _entity.Oznaka);
                               // WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(report, String.Format("Račun tranzitni {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun-otpremnica pos{0}", report, WorkItem, _tmpfrm.tipispisa);
                            }

                              if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-otpremnica POS bez R1")
                            {
                                report = new rptRacunOtpremnicaPOS(_entity);
                                report.Name = string.Format("Račun-otpremnica pos {0}", _entity.Oznaka);
                                ((rptRacunOtpremnicaPOS)report).xrRichText1.LoadFile(Application.StartupPath + "\\ZaglavljePOS.rtf");
                                ((rptRacunOtpremnicaPOS)report).xrRichText2.LoadFile(Application.StartupPath + "\\PodnozjePOS.rtf");
                                //_repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                //_repzgp.xrSubreport1.ReportSource = report;
                                //_repzgp.Name = string.Format("Ponuda {0}", _entity.Oznaka);
                               // WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(report, String.Format("Račun tranzitni {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun-otpremnica pos{0}", report, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }

                    //_repzgp = new ReportZagPodnozje();
                    //report = new testiranje(_entity);
                    //_repzgp.xrSubreport1.ReportSource = report;
                    //_repzgp.Name = string.Format("Račun otpremnica {0}", _entity.Oznaka);
                    //report.Name = string.Format("Račun otpremnica {0}", _entity.Oznaka);
                    //// report = new rptXtraPonuda(_entity);
                    ////  WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun otpremnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                    //OpenReport(_entity, "Račun otpremnica {0}", _repzgp, WorkItem);




                    break;
                case (int)DokumentTipList.Racun_otpremnica_storno:
                    //_tmpfrm = new ReportSelectorFrm();
                    //_tmpList = new System.Collections.ArrayList();
                    //_tmpList.Add("Račun otpremnica-ok");
                    //_tmpfrm.LBIzabir.DataSource = _tmpList;
                    //_tmpfrm.LBIzabir.SelectedIndex = 0;
                    //if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    //{
                    //    if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun otpremnica-ok")
                    //    {
                    //        report = new RacunOtpremnicaOK(_entity);
                    //        report.Name = string.Format("Račun otpremnica-ok {0}", _entity.Oznaka);
                    //        _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                    //        _repzgp.xrSubreport1.ReportSource = report;
                    //        _repzgp.Name = string.Format("Račun otpremnica-ok {0}", _entity.Oznaka);
                    //        if (_entity.IDStatus == 0)
                    //        {
                    //            _repzgp.Watermark.Text = "P R I V R E M E N I";
                    //            _repzgp.Watermark.ShowBehind = true;
                    //        }
                    //        //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun-otpremnica OK {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                    //        OpenReport(_entity, "Račun-otpremnica OK {0}", _repzgp, WorkItem,_tmpfrm.tipispisa);
                    //    }
                    //}

                    _tmpfrm = new ReportSelectorFrm();
                    System.Collections.Generic.List<IzjestajiListe> listtest = new System.Collections.Generic.List<IzjestajiListe>();
                    //   listtest.Add(new IzjestajiListe("Račun otpremnica-ok", "", "", ""));
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(listtest, "Račun otpremnica-ok");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(listtest, "Racun_otpremnica_storno");

                    // listtest.Add(new IzjestajiListe("Račun otpremnica-ok","Lokalno","RacunOtpremnicaOK"));
                    _tmpfrm.LBIzabir.DataSource = listtest;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;

                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = ((IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem);
                        if (selectedItem.TipIspia != "Lokalno")
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun otpremnica-ok")
                            {
                                report = new RacunOtpremnicaOK(_entity);
                                report.Name = string.Format("Račun otpremnica-ok {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun otpremnica-ok {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun-otpremnica OK {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun-otpremnica OK {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                        else
                        {
                            if (selectedItem.NazivIzvjestaja == "RacunOtpremnicaOK")
                            {
                                report = new RacunOtpremnicaOK(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun-otpremnica OK {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }

                        }
                    }

                    break;
                case (int)DokumentTipList.Ponuda:

                    _tmpfrm = new ReportSelectorFrm();
                    //  Dictionary<int, String> _tmpdict = new Dictionary<int, String>();
                    _tmpList = new List<IzjestajiListe>();
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Grupirana ponuda 2");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Grupirana ponuda");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Ponuda");
                    //DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Ponuda POS");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Ponuda");

                    //_tmpdict.Add(1, "Prijemni list storno");
                    //_tmpdict.Add(0, "Povrat robe");


                    //_tmpList.Add("Grupirana ponuda 2");
                    //_tmpList.Add("Grupirana ponuda");
                    //_tmpList.Add("Ponuda");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    //_tmpfrm.LBIzabir.DisplayMember("Value");
                    _repzgp = new ReportZagPodnozje();
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "RacunOtpremnica")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                            if (selectedItem.NazivIzvjestaja == "PonudaIspis2")
                            {
                                report = new PonudaIspis2(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                            if (selectedItem.NazivIzvjestaja == "PonudaIspis3")
                            {
                                report = new PonudaIspis3(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {

                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Ponuda")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.Name = string.Format("Ponuda {0}", _entity.Oznaka);

                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Ponuda {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Ponuda {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Ponuda {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Grupirana ponuda")
                            {

                                report = new PonudaIspis2(_entity);
                                report.Name = string.Format("Ponuda {0}", _entity.Oznaka);
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Ponuda {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Grupirana ponuda {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Grupirana ponuda {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);


                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Grupirana ponuda 2")
                            {

                                report = new PonudaIspis3(_entity);
                                report.Name = string.Format("Ponuda {0}", _entity.Oznaka);
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Ponuda {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Grupirana ponuda {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Grupirana ponuda {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);


                            }

                                   if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Ponuda POS")
                            {
                                report = new rptRacunOtpremnicaPOS(_entity);
                                report.Name = string.Format("Ponuda pos {0}", _entity.Oznaka);
                                //_repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                //_repzgp.xrSubreport1.ReportSource = report;
                                //_repzgp.Name = string.Format("Ponuda {0}", _entity.Oznaka);
                                WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun tranzitni {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Ponuda pos{0}", report, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }


                    break;
                case (int)DokumentTipList.Ponuda_storno:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Ponuda-storno");

                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Ponuda_storno");
                    //_tmpList.Add("Ponuda-storno");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {

                            if (selectedItem.NazivIzvjestaja == "RacunOtpremnica")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Ponuda-storno")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.Name = string.Format("Ponuda-storno {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Ponuda-storno {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Storno ponude {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Storno ponude {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }

                    break;
                case (int)DokumentTipList.Predračun:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Predračun");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Predracun");
                    //_tmpList.Add("Predračun");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {

                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "RacunOtpremnica")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Predračun")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.Name = string.Format("Predračun {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Predračun {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Predračun {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Predračun {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }

                    break;
                case (int)DokumentTipList.Predračun_storno:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Predračun-storno");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Predracun_storno");
                    //_tmpList.Add("Predračun-storno");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {

                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "RacunOtpremnica")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Predračun-storno")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.Name = string.Format("Predračun-storno {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Predračun-storno {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Storno predračuna {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Storno predračuna {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }
                    break;
                case (int)DokumentTipList.Racun_tranzitni:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-tranzitni");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Racun_tranzitni");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-tranzitni POS");    
                    //_tmpList.Add("Račun-tranzitni");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "RacunOtpremnica")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-tranzitni")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.Name = string.Format("Račun-tranzitni {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun-tranzitni {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun tranzitni {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun tranzitni {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }

                              if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-tranzitni POS")
                            {
                                report = new rptRacunOtpremnicaPOS(_entity);
                                report.Name = string.Format("Račun-tranzitni {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun-tranzitni {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun tranzitni {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun tranzitni {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }

                    break;
                case (int)DokumentTipList.Racun_tranzitni_storno:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-tranzitni-storno");

                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Racun_tranzitni_storno");

                    //_tmpList.Add("Račun-tranzitni-storno");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {

                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "RacunOtpremnicaOK")
                            {
                                report = new RacunOtpremnicaOK(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-tranzitni-storno")
                            {
                                report = new RacunOtpremnicaOK(_entity);
                                report.Name = string.Format("Račun-tranzitni-storno {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun-tranzitni-storno {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun tranzitni storno {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun tranzitni storno {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }
                    break;
                case (int)DokumentTipList.Izdatnica_storno:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Izdatnica-storno");

                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Izdatnica_storno");

                    //_tmpList.Add("Izdatnica-storno");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "IzdatnicaIspisStorno")
                            {
                                report = new IzdatnicaIspisStorno(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Izdatnica-storno")
                            {
                                report = new IzdatnicaIspisStorno(_entity);
                                report.Name = string.Format("Izdatnica-storno {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Izdatnica-storno {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Izdatnica storno {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Izdatnica storno {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }

                    break;
                case (int)DokumentTipList.Izdatnica:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Izdatnica");

                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Izdatnica");
                    // _tmpList.Add("Izdatnica");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "IzdatnicaIspis")
                            {
                                report = new IzdatnicaIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {

                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Izdatnica")
                            {
                                report = new IzdatnicaIspis(_entity);
                                report.Name = string.Format("Izdatnica {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Izdatnica {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Izdatnica {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Izdatnica {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }
                    break;
                case (int)DokumentTipList.Racun_usluga:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-usluga s rabatom");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-usluga s rabatom s opisom stavke");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-usluga");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-usluga s opisom stavke");

                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Racun_usluga");
                    //_tmpList.Add("Račun-usluga");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "RacunUsluga")
                            {
                                report = new RacunUsluga(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                            if (selectedItem.NazivIzvjestaja == "RacunOtpremnica")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-usluga")
                            {
                                report = new RacunUsluga(_entity);
                                report.Name = string.Format("Račun-usluga {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun-usluga {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun usluga {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun usluga {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-usluga s opisom stavke")
                            {
                                report = new RacunUslugaOpis(_entity);
                                report.Name = string.Format("Račun-usluga s opisom{0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun-usluga {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun usluga {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun usluga {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-usluga s rabatom")
                            {
                                report = new RacunOtpremnica(_entity);
                                report.Name = string.Format("Račun-usluga {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun-usluga {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun usluga {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun usluga rabat {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-usluga s rabatom s opisom stavke")
                            {
                                report = new RacunOtpremnicaOpis(_entity);
                                report.Name = string.Format("Račun-usluga {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun-usluga {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun usluga {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun usluga rabat {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }

                    break;
                case (int)DokumentTipList.Racun_usluga_storno:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-usluga-storno s rabatom");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-usluga-storno");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Racun_usluga_storno");
                    //_tmpList.Add("Račun-usluga-storno");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "RacunUslugaStorno")
                            {
                                report = new RacunUslugaStorno(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                            if (selectedItem.NazivIzvjestaja == "RacunOtpremnicaOK")
                            {
                                report = new RacunOtpremnicaOK(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-usluga-storno")
                            {
                                report = new RacunUslugaStorno(_entity);
                                report.Name = string.Format("Račun-usluga-storno {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun-usluga-storno {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun usluga storno {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun usluga storno {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }

                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-usluga-storno s rabatom")
                            {
                                report = new RacunOtpremnicaOK(_entity);
                                report.Name = string.Format("Račun-usluga-storno {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun-usluga-storno {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun usluga storno {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun usluga storno rabat {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }

                    break;
                case (int)DokumentTipList.Račun_MP:

                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun maloprodajni");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun maloprodajni R1");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Racun_MP");

                    //_tmpdict.Add(1, "Prijemni list storno");
                    //_tmpdict.Add(0, "Povrat robe");

                    //_tmpList.Add("Račun maloprodajni");
                    //_tmpList.Add("Račun maloprodajni R1");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    //_tmpfrm.LBIzabir.DisplayMember("Value");
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "RacunMPIspis")
                            {
                                report = new RacunMPIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                            if (selectedItem.NazivIzvjestaja == "RacunMPIspisR1")
                            {
                                report = new RacunMPIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }

                        }
                        else
                        {


                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun maloprodajni R1")
                            {
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                report = new RacunMPIspis(_entity);
                                report.Name = string.Format("Račun-MP {0}", _entity.Oznaka);
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun-MP {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun maloprodajni {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun maloprodajni {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            else
                            {
                                _repzgp = new ReportZagPodnozje();
                                report = new RacunMPIspis(_entity);
                                report.Name = string.Format("Račun-MP {0}", _entity.Oznaka);
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun-MP {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun maloprodajni {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun maloprodajni {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }

                    break;
                case (int)DokumentTipList.Račun_MP_storno:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-MP-storno");

                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Racun_MP_storno");


                    //_tmpList.Add("Račun-MP-storno");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "RacunMPStornoIspis")
                            {
                                report = new RacunMPStornoIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                            if (selectedItem.NazivIzvjestaja == "RacunMPStornoIspisR1")
                            {
                                report = new RacunMPStornoIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-MP-storno")
                            {
                                report = new RacunMPStornoIspis(_entity);
                                report.Name = string.Format("Račun-MP-storno {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun-MP-storno {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun maloprodajni storno {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun maloprodajni storno {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }

                    break;
                case (int)DokumentTipList.Račun_MP_Servis:

                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun maloprodajni servis");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun maloprodajni servis R1");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun maloprodajni servis POS");
                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun maloprodajni servis POS R1");
                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Racun_MP_Servis");
                    //_tmpdict.Add(1, "Prijemni list storno");
                    //_tmpdict.Add(0, "Povrat robe");

                    //_tmpList.Add("Račun maloprodajni servis");
                    //_tmpList.Add("Račun maloprodajni servis R1");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "RacunMPIspis")
                            {
                                report = new RacunMPIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                            if (selectedItem.NazivIzvjestaja == "RacunMPIspisR1")
                            {
                                report = new RacunMPIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }

                            if (selectedItem.NazivIzvjestaja == "rptMPSPos")
                            {
                                report = new rptMPSPos(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                //_repzgp = new ReportZagPodnozje();
                                //impersinate = (int)DokumentTipList.Otpremnica;
                                //_repzgp.xrSubreport1.ReportSource = report;
                                //_repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                //if (_entity.IDStatus == 0)
                                //{
                                //    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                //    _repzgp.Watermark.ShowBehind = true;
                                //}
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun-otpremnica OK {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", report, WorkItem, _tmpfrm.tipispisa);
                            }

                        }
                        else
                        {
                            

                          if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun maloprodajni servis POS")
                            {
                                report = new rptMPSPos(_entity);
                                report.Name = string.Format("Račun maloprodajni servis POS {0}", _entity.Oznaka);
                                ((rptMPSPos)report).xrRichText1.LoadFile(Application.StartupPath + "\\ZaglavljePOS.rtf");
                                ((rptMPSPos)report).xrRichText2.LoadFile(Application.StartupPath + "\\PodnozjePOS.rtf");
                                //_repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                //_repzgp.xrSubreport1.ReportSource = report;
                                //_repzgp.Name = string.Format("Ponuda {0}", _entity.Oznaka);
                               // WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(report, String.Format("Račun tranzitni {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun maloprodajni servis POS{0}", report, WorkItem, _tmpfrm.tipispisa);
                            }
                          if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun maloprodajni servis POS R1")
                            {
                                report = new rptMPSPosR1(_entity);
                                report.Name = string.Format("Račun maloprodajni servis POS {0}", _entity.Oznaka);
                                ((rptMPSPosR1)report).xrRichText1.LoadFile(Application.StartupPath + "\\ZaglavljePOSR1.rtf");
                                ((rptMPSPosR1)report).xrRichText2.LoadFile(Application.StartupPath + "\\PodnozjePOS.rtf");
                                //_repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                //_repzgp.xrSubreport1.ReportSource = report;
                                //_repzgp.Name = string.Format("Ponuda {0}", _entity.Oznaka);
                               // WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(report, String.Format("Račun tranzitni {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun maloprodajni servis POS{0}", report, WorkItem, _tmpfrm.tipispisa);
                            }




                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun maloprodajni servis R1")
                            {

                                report = new RacunMPIspis(_entity);
                                report.Name = string.Format("Račun-MP-servis {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun-MP-servis {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun maloprodajni servis {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun maloprodajni servis {0}", _repzgp, WorkItem,
                                           _tmpfrm.tipispisa);
                            }
                          if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun maloprodajni servis")
                            {
                                report = new RacunMPIspis(_entity);
                                report.Name = string.Format("Račun-MP-servis {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun-MP-servis {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun maloprodajni servis {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun maloprodajni servis {0}", _repzgp, WorkItem,
                                           _tmpfrm.tipispisa);
                            }
                        }
                    }


                    break;
                case (int)DokumentTipList.Račun_MP_Serivs_storno:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Račun-MP-servis-storno");

                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Racun_MP_Serivs_storno");
                    //_tmpList.Add("Račun-MP-servis-storno");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {

                            if (selectedItem.NazivIzvjestaja == "RacunMPStornoIspis")
                            {
                                report = new RacunMPStornoIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                            if (selectedItem.NazivIzvjestaja == "RacunMPStornoIspisR1")
                            {
                                report = new RacunMPStornoIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje("\\zaglavlje_R1.wmf", "");
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Račun-MP-servis-storno")
                            {
                                report = new RacunMPStornoIspis(_entity);
                                report.Name = string.Format("Račun-MP-servis-storno {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Račun-MP-servis-storno {0}", _entity.Oznaka);
                                if (_entity.IDStatus == 0)
                                {
                                    _repzgp.Watermark.Text = "P R I V R E M E N I";
                                    _repzgp.Watermark.ShowBehind = true;
                                }
                                //  WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Račun maloprodajni servis storno {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Račun maloprodajni servis storno {0}", _repzgp, WorkItem,
                                           _tmpfrm.tipispisa);
                            }
                        }
                    }

                    break;
                case (int)DokumentTipList.Revers:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Revers");

                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Revers");

                    //_tmpList.Add("Revers");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {

                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "ReversIspis")
                            {
                                report = new ReversIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Revers")
                            {
                                report = new ReversIspis(_entity);
                                report.Name = string.Format("Revers {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Revers {0}", _entity.Oznaka);
                                //WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Revers {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                                OpenReport(_entity, "Revers {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }
                    break;
                case (int)DokumentTipList.VisakManjak:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Višak-Manjak");

                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "VisakManjak");

                    //_tmpList.Add("Višak-Manjak");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "VisakManjakIspis")
                            {
                                report = new VisakManjakIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Višak-Manjak")
                            {
                                report = new VisakManjakIspis(_entity);
                                report.Name = string.Format("Višak-Manjak {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                //_repzgp.Landscape = true;
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Višak-Manjak {0}", _entity.Oznaka);
                                OpenReport(_entity, "Višak/Manjak {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }

                    //   WorkItem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_repzgp, String.Format("Višak/Manjak {0}", _entity.Oznaka)), WorkItem, PublicationScope.Global);
                    break;
                case (int)DokumentTipList.Povrat_reversa:
                    _tmpfrm = new ReportSelectorFrm();
                    _tmpList = new List<IzjestajiListe>();

                    DodavanjeIzvjestaja.DodajIzvjestajDefault(_tmpList, "Povrat reversa");

                    DodavanjeIzvjestaja.DodajIzvjestajeuListu(_tmpList, "Povrat_reversa");
                    //_tmpList.Add("Povrat reversa");
                    _tmpfrm.LBIzabir.DataSource = _tmpList;
                    _tmpfrm.LBIzabir.SelectedIndex = 0;
                    if (_tmpfrm.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                    {
                        IzjestajiListe selectedItem = (IzjestajiListe)_tmpfrm.LBIzabir.SelectedItem;
                        if (selectedItem.TipIspia == "Lokalno")
                        {
                            if (selectedItem.NazivIzvjestaja == "ReversIspis")
                            {
                                report = new ReversIspis(_entity);
                                report.LoadLayout(selectedItem.File);
                                report.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("{0} {1}", selectedItem.Ispis, _entity.Oznaka);
                                OpenReport(_entity, selectedItem.Ispis + " {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);

                            }
                        }
                        else
                        {
                            if (_tmpfrm.LBIzabir.SelectedItem.ToString() == "Povrat reversa")
                            {
                                report = new ReversIspis(_entity);
                                report.Name = string.Format("Povrat reversa {0}", _entity.Oznaka);
                                _repzgp = new ReportZagPodnozje();
                                _repzgp.xrSubreport1.ReportSource = report;
                                _repzgp.Name = string.Format("Povrat reversa {0}", _entity.Oznaka);
                                OpenReport(_entity, "Povrat reversa {0}", _repzgp, WorkItem, _tmpfrm.tipispisa);
                            }
                        }
                    }

                    break;
                default:
                    break;

            }

        }

        private void FilajStavke(Dokument entity, WorkItem workItem)
        {
            workItem.Services.Get<DokumentService>().DeepLoad(entity, true,
             NetROS.Tiers.Data.DeepLoadType.IncludeChildren,
              typeof(TList<DokumentStavka>),
             typeof(TList<Veza>), typeof(TList<DokumentDodatak>));
            if (entity.DokumentStavkaCollection != null && entity.DokumentStavkaCollection.Count > 0)
            {
                entity.DokumentStavkaCollection.Sort("DateUICreated asc");
            }

            workItem.Services.Get<DokumentStavkaService>().DeepLoad(
                entity.DokumentStavkaCollection, true, NetROS.Tiers.Data.DeepLoadType.IncludeChildren
                , typeof(Djelatnik), typeof(TList<DokumentStavkaOpis>));
        }

        private void OpenReport(Dokument _entity, string _naziv, XtraReport _report2, WorkItem workitem, int tipispisa)
        {

            XtraReport _rep2 = _report2;
            XtraReport _report = _report2;
            if (_report is ReportZagPodnozje)
            {
                _report = ((ReportZagPodnozje)_report).xrSubreport1.ReportSource;
            }
            BindingSource _tmp = null;
            //dvostruko
            if (_entity.DokumentStavkaCollection != null && _entity.DokumentStavkaCollection.Count > 0)
            {
                _entity.DokumentStavkaCollection.Sort("DateUICreated asc");
            }
            if (_report != null && _report.DataSource != null)
            {
                _tmp = _report.DataSource as BindingSource;
            }
            //
            Dokument _tmpd = null;
            if (_tmp != null)
                _tmpd = _tmp.DataSource as Dokument;
            if (_tmpd != null)
            {

                //workitem.Services.Get<DokumentService>().DeepLoad(_tmpd, true,
                //    NetROS.Tiers.Data.DeepLoadType.IncludeChildren,typeof(Mjesto), 
                //    typeof(Djelatnik), typeof(NacinTransporta), typeof(Organizacija), 
                //    typeof(DokumentTip), typeof(Klijent), typeof(TList<DokumentStavka>), 
                //    typeof(NacinPlacanja), 
                //    typeof(TList<Veza>),typeof(TList<DokumentDodatak>),typeof(Valuta));

                workitem.Services.Get<DokumentService>().DeepLoad(_tmpd, true,
                  NetROS.Tiers.Data.DeepLoadType.IncludeChildren,
                   typeof(TList<DokumentStavka>),
                  typeof(TList<Veza>), typeof(TList<DokumentDodatak>));
                if (_tmpd.DokumentStavkaCollection != null && _tmpd.DokumentStavkaCollection.Count > 0)
                {
                    _tmpd.DokumentStavkaCollection.Sort("DateUICreated asc");
                }

                workitem.Services.Get<DokumentService>().DeepLoad(_tmpd, true,
        NetROS.Tiers.Data.DeepLoadType.IncludeChildren, typeof(TList<DokumentPlacanje>));

                workitem.Services.Get<DokumentService>().DeepLoad(_tmpd, true,
                  NetROS.Tiers.Data.DeepLoadType.IncludeChildren, typeof(Mjesto),
                  typeof(Djelatnik), typeof(NacinTransporta), typeof(Organizacija),
                  typeof(DokumentTip), typeof(Klijent));

                workitem.Services.Get<DokumentService>().DeepLoad(_tmpd, true,
                  NetROS.Tiers.Data.DeepLoadType.IncludeChildren, typeof(NacinPlacanja),
                typeof(Valuta), typeof(OrganizacijaZiroRacun));
                if (!_tmpd.IDValute.HasValue)
                {
                    _tmpd.IDValute = 1;
                    _tmpd.IDValuteSource = workitem.Services.Get<ValutaService>().GetByID(1);
                    if (_tmpd.IDValuteSource == null) _tmpd.IDValuteSource = new Valuta();
                }
                //  _tmpd.IDKlijentSource = null;
                //     _tmpd.IDValuteSource = workitem.Services.Get<ValutaService>().GetByID(_tmpd.IDValute.Value);
                if (_tmpd.IDOrganizacijaZiroRacun == null || _tmpd.IDOrganizacijaZiroRacun == 0)
                {
                    TList<OrganizacijaZiroRacun> orgtmp = workitem.Services.Get<OrganizacijaZiroRacunService>().GetByIDOrganizacija(_tmpd.IDOrganizacijaOd.Value);
                    if (orgtmp.Count != 0)
                    {
                        _tmpd.IDOrganizacijaZiroRacunSource = orgtmp[0];
                    }
                    else
                    {
                        try
                        {
                            int i;
                            _tmpd.IDOrganizacijaZiroRacunSource =
                                workitem.Services.Get<OrganizacijaZiroRacunService>().GetAll(0, 1, out i)[0];
                        }
                        catch (Exception ex)
                        {
                            ExceptionPolicy.HandleException(ex, "Default Policy");
                        }
                    }

                }

                if (_tmpd.IDOrganizacijaOdSource == null)
                {
                    _tmpd.IDOrganizacijaOdSource = workitem.Services.Get<OrganizacijaService>().GetByID(_tmpd.IDOrganizacijaOd.Value);
                }

                if (_tmpd.DokumentPlacanjeCollection.Count != 0)
                {
                    workitem.Services.Get<DokumentPlacanjeService>().DeepLoad(_tmpd.DokumentPlacanjeCollection, true, NetROS.Tiers.Data.DeepLoadType.IncludeChildren, typeof(NacinPlacanja));
                }

                if (_tmpd.IDKlijentSource == null && _tmpd.IDKlijent.HasValue && _tmpd.IDKlijent != 0)
                {
                    _tmpd.IDKlijentSource = workitem.Services.Get<KlijentService>().GetByID(_tmpd.IDKlijent.Value);
                    workitem.Services.Get<KlijentService>().DeepLoad(_tmpd.IDKlijentSource, true, NetROS.Tiers.Data.DeepLoadType.IncludeChildren, typeof(Mjesto));
                }
                else
                {
                    if (_tmpd.IDKlijent.HasValue)
                        workitem.Services.Get<KlijentService>().DeepLoad(_tmpd.IDKlijentSource, true, NetROS.Tiers.Data.DeepLoadType.IncludeChildren, typeof(Mjesto));
                }
                workitem.Services.Get<OrganizacijaService>().DeepLoad(_tmpd.IDOrganizacijaOdSource, true, NetROS.Tiers.Data.DeepLoadType.IncludeChildren, typeof(Mjesto));
                workitem.Services.Get<VezaService>().DeepLoad(_tmpd.VezaCollectionGetByIDParent, true, NetROS.Tiers.Data.DeepLoadType.IncludeChildren, typeof(Dokument));


                workitem.Services.Get<DokumentStavkaService>().DeepLoad(
                    _tmpd.DokumentStavkaCollection, true, NetROS.Tiers.Data.DeepLoadType.IncludeChildren
                    , typeof(Djelatnik), typeof(TList<DokumentStavkaOpis>));
                foreach (DokumentStavka _dokumentStavka in _tmpd.DokumentStavkaCollection)
                {
                     if (_dokumentStavka.IDOrgJedOd != null)
                    {
                        _dokumentStavka.IDOrgJedOdSource=
                            workitem.Services.Get<OrganizacijaService>().GetByID(_dokumentStavka.IDOrgJedOd);
                    }

                    if (_dokumentStavka.IDArtikl != null)
                    {
                        _dokumentStavka.IDArtiklSource =
                            workitem.Services.Get<ArtiklService>().GetByID(_dokumentStavka.IDArtikl.Value);
                        if (_dokumentStavka.IDArtiklSource != null)
                        {
                            _dokumentStavka.IDArtiklSource.IDJedinicnaMjeraSource =
                                workitem.Services.Get<ArtiklMjeraService>().GetByID(
                                    _dokumentStavka.IDArtiklSource.IDJedinicnaMjera);

                            _dokumentStavka.IDArtiklSource.IDArtiklKategorijaSource =
                                workitem.Services.Get<ArtiklKategorijaService>().GetByID(
                                    _dokumentStavka.IDArtiklSource.IDArtiklKategorija);
                            if (_dokumentStavka.IDArtiklSource.IDArtiklKategorijaSource != null)
                               _dokumentStavka.IDArtiklSource.IDArtiklKategorijaSource.ArtiklSpecifikacijaCollection=workitem.Services.Get<ArtiklSpecifikacijaService>().GetByIDKategorija(  _dokumentStavka.IDArtiklSource.IDArtiklKategorijaSource.ID);
                            Dictionary<int, int> _ints = new Dictionary<int, int>();
                            foreach (
                                ArtiklSpecifikacija artiklSpecifikacija in
                                    _dokumentStavka.IDArtiklSource.IDArtiklKategorijaSource.ArtiklSpecifikacijaCollection)
                            {
                                if (artiklSpecifikacija.RedBrRacunu != null)
                                {
                                    _ints.Add(artiklSpecifikacija.ID, artiklSpecifikacija.RedBrRacunu.Value);
                                }

                            }
                            if (_ints.Count > 0)
                            {
                                if (_dokumentStavka.IDArtiklSource.ArtiklVrijednostiCollection == null)
                                {
                                    _dokumentStavka.IDArtiklSource.ArtiklVrijednostiCollection= new TList<ArtiklVrijednosti>();
                                }
                                foreach (KeyValuePair<int, int> pair in _ints)
                                {
                                    _dokumentStavka.IDArtiklSource.ArtiklVrijednostiCollection.AddRange(
                                        workitem.Services.Get<ArtiklVrijednostiService>().
                                            GetByIDArtiklIDArtiklSpecifikacija(_dokumentStavka.IDArtikl.Value, pair.Key));
                                }
                                
                            }
                        }
                    }
                    //_dokumentStavka.DokumentStavkaOpisCollection = workitem.Services.Get<DokumentStavkaOpisService>().GetByIDDokumentStavka(_dokumentStavka.ID);
                }


                /*MicanjeZaglavlja*/
                     workitem.Services.Get<DokumentService>().DeepLoad(_tmpd, true,
        NetROS.Tiers.Data.DeepLoadType.IncludeChildren, typeof(TList<DokumentZaglavlje>));
                
                    
                TList<PrilagodenDokumentTip> _tmpl = workitem.RootWorkItem.Items["ParametriReporta"] as TList<PrilagodenDokumentTip>;

                _tmpd.IDDokumentTipSource = new DokumentTip();
                _tmpd.IDDokumentTipSource.ID = _tmpd.IDDokumentTip;
                if (_tmpl != null)
                    _tmpd.IDDokumentTipSource.PrilagodenDokumentTip = _tmpl.Find(PrilagodenDokumentTipColumn.IDDokumentTip, impersinate == 0 ? _tmpd.IDDokumentTip : impersinate);
                TList<Organizacija> _tmporg = workitem.Services.Get<OrganizacijaService>().GetParentDirektorPorezniBroj(_tmpd.IDOrganizacijaOd);
                if (_tmporg.Count != 0)
                {
                    _tmpd.IDOrganizacijaOdSource.Direktor = _tmporg[0].Direktor;
                    _tmpd.IDOrganizacijaOdSource.Poreznibroj = _tmporg[0].Poreznibroj;
                }

                if (_tmpd.IDDokumentTip == (int)DokumentTipList.Izdatnica || _tmpd.IDDokumentTip == (int)DokumentTipList.Izdatnica_storno || _tmpd.IDDokumentTip == (int)DokumentTipList.Međuskladišnica_Izdana_Robno || _tmpd.IDDokumentTip == (int)DokumentTipList.Međuskladišnica_Izdana_Storno)
                {
                    if (_report as IIzdatnicaIspis != null)
                    {

                        String _foramtKljuca = "{0}|{1}|{2}";

                        ((IIzdatnicaIspis)_report).TmpDic.Clear();



                        foreach (DokumentStavka _tmpdocstavka in _tmpd.DokumentStavkaCollection)
                        {
                            IDataReader _dataReader = workitem.Services.Get<ArtiklService>().ProsjecnaNabavnaCijena(
                                _tmpdocstavka.IDOrgJedOd, _tmpdocstavka.IDArtikl, _tmpd.Datum);
                            DataSet testds =
                                NetROS.Tiers.Data.Utility.ConvertDataReaderToDataSet(_dataReader);
                            if (_dataReader != null)
                                _dataReader.Close();
                            Decimal? pnc = null;
                            if (testds != null && testds.Tables.Count != 0 && testds.Tables[0].Rows.Count != 0)
                            {
                                pnc = Convert.ToDecimal(testds.Tables[0].Rows[0].ItemArray[0]);
                            }
                            if (
                                ((IIzdatnicaIspis)_report).TmpDic.ContainsKey(String.Format(_foramtKljuca,
                                                                                             _tmpdocstavka.IDOrgJedOd,
                                                                                             _tmpdocstavka.IDArtikl,
                                                                                             _tmpd.Datum)))
                            {
                                ((IIzdatnicaIspis)_report).TmpDic.Remove(String.Format(_foramtKljuca,
                                                                                        _tmpdocstavka.IDOrgJedOd,
                                                                                        _tmpdocstavka.IDArtikl,
                                                                                        _tmpd.Datum));
                                ((IIzdatnicaIspis)_report).TmpDic.Add(
                                    String.Format(_foramtKljuca, _tmpdocstavka.IDOrgJedOd, _tmpdocstavka.IDArtikl,
                                                  _tmpd.Datum), pnc);
                            }
                            else
                            {
                                ((IIzdatnicaIspis)_report).TmpDic.Add(
                                    String.Format(_foramtKljuca, _tmpdocstavka.IDOrgJedOd, _tmpdocstavka.IDArtikl,
                                                  _tmpd.Datum), pnc);
                            }
                        }
                    }
                }

                ((BindingSource)_report.DataSource).DataSource = _tmpd;
                if (_report as IParametriIzvjestaja != null)
                {
                    ((IParametriIzvjestaja)_report).SetParametri();
                }
                _report = _rep2;
                //(_report.DataSource as System.Windows.Forms.BindingSource).DataSource = _tmpd;
            }

            if (_report != null && tipispisa == 1)
            {

                //   _report.CreateDocument();

                PrinterSettings settings = new PrinterSettings();
                //old
                string printertoprint = PrinterUtility.GetPrinterToPrinter();
                settings.PrinterName = printertoprint;
                _report.PrinterName = printertoprint;
                //_report.PrintingSystem.PageSettings.PrinterName = printertoprint;
                _report.PrintingSystem.StartPrint += PrintingSystem_StartPrint;

                _report.PrintingSystem.ShowMarginsWarning = false;
                _report.PaperKind = settings.DefaultPageSettings.PaperSize.Kind;
                _report.PaperName = settings.DefaultPageSettings.PaperSize.PaperName;

                //_report.PageSize
                //_report.PageSize.Height = settings.DefaultPageSettings.PaperSize.Height;
                //_report.PageSize.Width = settings.DefaultPageSettings.PaperSize.Width;
                _report.PrintingSystem.PageSettings.PaperKind = settings.DefaultPageSettings.PaperSize.Kind;
                _report.PrintingSystem.PageSettings.PaperName = settings.DefaultPageSettings.PaperSize.PaperName;


                //settings.DefaultPageSettings.Landscape = _report.Landscape;
                PageSettings _pageSettings = new PageSettings(settings);
                bool landscape = _report.Landscape;
                _pageSettings.Landscape = _report.Landscape;
                Margins _minmarg = new Margins(0, 0, 0, 0);
                if (settings.DefaultPageSettings.Landscape)
                {
                    _minmarg = GetMinMarginsMojLandS(_pageSettings);

                }
                else
                {
                    _minmarg = GetMinMarginsMoj(_pageSettings);
                }
                _pageSettings.Margins = _minmarg;
                _report.PrintingSystem.PageSettings.Assign(_pageSettings, new Margins(0, 0, 0, 0));
                /*
                if (_report.Landscape)
                {
                    if (settings.LandscapeAngle == 90)
                            {
                                _pageSettings.Margins.Top = (int)Math.Round(settings.DefaultPageSettings.PrintableArea.Left,MidpointRounding.AwayFromZero)+1;
                                _pageSettings.Margins.Left = (int)Math.Round(settings.DefaultPageSettings.PaperSize.Height - settings.DefaultPageSettings.PrintableArea.Height - settings.DefaultPageSettings.PrintableArea.Top,MidpointRounding.AwayFromZero)+1;
                                _pageSettings.Margins.Bottom  = (int)Math.Round(settings.DefaultPageSettings.PaperSize.Width - settings.DefaultPageSettings.PrintableArea.Width - settings.DefaultPageSettings.PrintableArea.Left,MidpointRounding.AwayFromZero)+1;    
                                _pageSettings.Margins.Right = (int)Math.Round(settings.DefaultPageSettings.PrintableArea.Top,MidpointRounding.AwayFromZero)+1;
 
                            }
                            if (settings.LandscapeAngle == 270)
                            {
                                _pageSettings.Margins.Top = (int)Math.Round(settings.DefaultPageSettings.PaperSize.Width - settings.DefaultPageSettings.PrintableArea.Width - settings.DefaultPageSettings.PrintableArea.Left,MidpointRounding.AwayFromZero)+1;    
                                _pageSettings.Margins.Left = (int)Math.Round(settings.DefaultPageSettings.PrintableArea.Top,MidpointRounding.AwayFromZero)+1;
                                _pageSettings.Margins.Bottom = (int)Math.Round(settings.DefaultPageSettings.PrintableArea.Left,MidpointRounding.AwayFromZero)+1;
                                _pageSettings.Margins.Right = (int)Math.Round(settings.DefaultPageSettings.PaperSize.Height - settings.DefaultPageSettings.PrintableArea.Height - settings.DefaultPageSettings.PrintableArea.Top,MidpointRounding.AwayFromZero)+1;
                            }

                }
                else
                {
                    //_pageSettings.Margins.Top = (int)Math.Round(settings.DefaultPageSettings.PrintableArea.Top);
                    //_pageSettings.Margins.Left = (int)Math.Round(settings.DefaultPageSettings.PrintableArea.Left);
                    //_pageSettings.Margins.Bottom = (int)Math.Round(settings.DefaultPageSettings.PaperSize.Height - settings.DefaultPageSettings.PrintableArea.Height - settings.DefaultPageSettings.PrintableArea.Top);
                    //_pageSettings.Margins.Right = (int)Math.Round(settings.DefaultPageSettings.PaperSize.Width - settings.DefaultPageSettings.PrintableArea.Width - settings.DefaultPageSettings.PrintableArea.Left);
                     _pageSettings.Margins.Top = (int)Math.Round(settings.DefaultPageSettings.PrintableArea.Top,MidpointRounding.AwayFromZero)+1;
                            _pageSettings.Margins.Left = (int)Math.Round(settings.DefaultPageSettings.PrintableArea.Left,MidpointRounding.AwayFromZero)+1;
                            _pageSettings.Margins.Bottom = (int)Math.Round(settings.DefaultPageSettings.PaperSize.Height - settings.DefaultPageSettings.PrintableArea.Height - settings.DefaultPageSettings.PrintableArea.Top,MidpointRounding.AwayFromZero)+1;
                            _pageSettings.Margins.Right = (int)Math.Round(settings.DefaultPageSettings.PaperSize.Width - settings.DefaultPageSettings.PrintableArea.Width - settings.DefaultPageSettings.PrintableArea.Left,MidpointRounding.AwayFromZero)+1;   
                }
                _report.PrintingSystem.PageSettings.Assign(_pageSettings);
                _report.PrintingSystem.PageSettings.Landscape = landscape;
                  
                _report.Margins = _pageSettings.Margins;
                 * */
                _report.PrintingSystem.PageSettings.Landscape = landscape;
                _report.Margins = _pageSettings.Margins;
                _report.CreateDocument();
                //((PrintingSystem)_report.PrintingSystem).Print(printertoprint);
                _report.Print(printertoprint);
            }
            if (tipispisa == 0)
                workitem.EventTopics[EventTopicNames.PrikaziIzvjestaj].Fire(this, new EventArgs<object, string>(_report, String.Format(_naziv, _entity.Oznaka)), workitem, PublicationScope.Global);

        }
        internal static Margins GetMinMarginsMoj(PageSettings pageSettings)
        {
            PrinterSettings printerSettings = pageSettings.PrinterSettings;
            if (!String.IsNullOrEmpty(printerSettings.PrinterName))
            {
                IntPtr hdc = Win32.CreateDC(null, printerSettings.PrinterName, IntPtr.Zero, IntPtr.Zero);
                if (hdc != IntPtr.Zero)
                    try
                    {
                        using (Graphics gr = Graphics.FromHdc(hdc))
                        {
                            Margins minMargins = DeviceCaps.GetMinMargins(gr);
                            if (pageSettings.Landscape && pageSettings.PrinterSettings.LandscapeAngle == 90)
                                return (ConvertToLandscape90(minMargins));
                            if (pageSettings.Landscape && pageSettings.PrinterSettings.LandscapeAngle == 270)
                                return (ConvertToLandscape270(minMargins));
                            return minMargins;
                        }
                    }
                    finally
                    {
                        Win32.DeleteDC(hdc);
                    }
            }
            return null;
        }
        internal static Margins GetMinMarginsMojLandS(PageSettings pageSettings)
        {
            PrinterSettings printerSettings = pageSettings.PrinterSettings;
            if (!String.IsNullOrEmpty(printerSettings.PrinterName))
            {
                IntPtr hdc = Win32.CreateDC(null, printerSettings.PrinterName, IntPtr.Zero, IntPtr.Zero);
                if (hdc != IntPtr.Zero)
                    try
                    {
                        using (Graphics gr = Graphics.FromHdc(hdc))
                        {
                            Margins minMargins = DeviceCaps.GetMinMargins(gr);
                            if (!pageSettings.Landscape && pageSettings.PrinterSettings.LandscapeAngle == 90)
                                return (ConvertToLandscape90(minMargins));
                            if (!pageSettings.Landscape && pageSettings.PrinterSettings.LandscapeAngle == 270)
                                return (ConvertToLandscape270(minMargins));
                            return minMargins;
                        }
                    }
                    finally
                    {
                        Win32.DeleteDC(hdc);
                    }
            }
            return null;
        }
        static Margins ConvertToLandscape90(Margins margins)
        {
            return new Margins(margins.Bottom, margins.Top, margins.Right, margins.Left);
        }
        static Margins ConvertToLandscape270(Margins margins)
        {
            return new Margins(margins.Top, margins.Bottom, margins.Right, margins.Left);
        }
        void PrintingSystem_StartPrint(object sender, DevExpress.XtraPrinting.PrintDocumentEventArgs e)
        {
            e.PrintDocument.PrinterSettings.Copies = Convert.ToInt16(PrinterUtility.BrojKopija);
        }


    }
    public class IzjestajiListe
    {
        private string _Ispis;
        private string _TipIspisa;
        private string _NazivIzvjestaja;
        private string _File;
        public IzjestajiListe(string Ispis, string TipIspisa, string NazivIzvjestaja, string File)
        {
            _Ispis = Ispis;
            _TipIspisa = TipIspisa;
            _NazivIzvjestaja = NazivIzvjestaja;
            _File = File;
        }
        public string TipIspia
        {
            get { return _TipIspisa; }
        }
        public string Ispis
        {
            get { return _Ispis; }
        }

        public string NazivIzvjestaja
        {
            get { return _NazivIzvjestaja; }
        }

        public string File
        {
            get { return _File; }
        }



        public override string ToString()
        {
            return _Ispis;
        }
    }

    public static class DodavanjeIzvjestaja
    {
        public static void DodajIzvjestajeuListu(List<IzjestajiListe> lista, string ImeDirektorijaIliIzvjestaja)
        {
            String lokacija = Application.StartupPath + "\\Izvjestaji" + "\\" + ImeDirektorijaIliIzvjestaja;
            if (Directory.Exists(lokacija))
            {
                DirectoryInfo di = new DirectoryInfo(lokacija);

                DirectoryInfo[] rgDirec = di.GetDirectories();
                foreach (DirectoryInfo directoryInfo in rgDirec)
                {
                    FileInfo[] rgFiles = directoryInfo.GetFiles("*.repx");
                    foreach (FileInfo fi in rgFiles)
                    {
                        fi.ToString();
                        lista.Add(new IzjestajiListe(fi.Name.Replace(".repx", ""), "Lokalno", directoryInfo.Name,
                                                     fi.FullName));
                    }
                }
            }


        }
        public static void DodajIzvjestajDefault(List<IzjestajiListe> lista, string Naziv)
        {
            lista.Add(new IzjestajiListe(Naziv, "", "", ""));
        }

    }

}

